package com.atguigu.gulimall.product;

import org.apache.ibatis.annotations.Mapper;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

/**
 * 整合MyBatisPlus
 * 1、导入依赖
 *          <dependency>
                 <groupId>com.baomidou</groupId>
                 <artifactId>mybatis-plus-boot-starter</artifactId>
                 <version>3.2.0</version>
            </dependency>
 * 2、配置
 *      1. 配置数据源
 *             1)导入数据库驱动
 *             2)在application.yml中配置数据源相关信息
 *      2. 配置MyBatisPlus
 *             1）@MapperScan扫描配置的mapper文件
 *             2）告诉MyBatisPlus，sql的映射文件在哪里
 *             3）自增主键
 *3、 Mybatis Plus 逻辑删除，需要在application.yml中加入配置(这个是全局逻辑删除的规则)
 *    mybatis-plus:
         global-config:
         db-config:
         logic-delete-field: flag  # 全局逻辑删除的实体字段名(since 3.3.0,配置后可以忽略不配置步骤2)
         logic-delete-value: 1 # 逻辑已删除值(默认为 1)
         logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
   在实体类的配置逻辑删除字段上加上的注解 @TableLogic
 */
@MapperScan("com.atguigu.gulimall.product.dao")
@SpringBootApplication
@EnableDiscoveryClient
public class GulimallProductApplication {

	public static void main(String[] args) {
		SpringApplication.run(GulimallProductApplication.class, args);
	}

}
